1. Field of Invention
This invention relates to the use of the existing power management facilities of a computer, workstation, or server by a Super Operating System to quickly switch between multiple operating systems and/or environments.
2. Description of Related Art
Typical computers, known to the public, are comprised of hardware, controlled by a single operating system, which in turn regulate the use of the hardware components by application software compatible with the particular operating system. Operating systems have been designed to assess, catalog and take control of all the resources of a computer system in order to efficiently allocate those resources to the application programs. As such, operating systems are basically hostile to another operating system, if installed and operating on a single system, unless appropriate measures are employed to segregate the domain of each operating system.
Segregation may be accomplished through selecting a single operating system to initiate upon bootup. The particular operating system is given full control of the computer system, but only compatible application software can function. If an application program, compatible only in a different operating system environment, is needed to operate on the computer system, the system must be shutdown, unloading the current operating system, and then rebooted, selecting the operating system that provides the necessary environment of the needed program. The new operating system is given full control during this session, and the necessary program can be executed.
An alternative manner of segregating operating systems is to isolate independent systems on separate computer workstations or servers. Then by networking the systems, through standardized networking protocols, the operating systems can interact, but the network maintains the isolation of each independent operating system's realm of control to the particular node on the network.
As computer technology has assumed a greater importance in society, advancements have developed to provide greater and faster performance for the individual computer systems. Examples of related art computer technology advances include recent patents that have made gradual improvements in the way computer systems are utilized. Specifically, several methods are described in the prior art that allow multiple operating systems to be installed in a computer, such that users may choose which operating system to boot or resume from the suspended state after the computer is powered up.
U.S. Pat. No. 6,178,503 for Managing Multiple Operating Systems on a Single Computer, issued to Madden et al., discloses a graphical user interface (“GUI”) for managing multiple operating systems on a single computer and performing other boot-time operations. The GUI approach is an improvement over the pre-existing boot manager menu for selecting an operating system in a computer with multiple operating systems, in which multiple operating systems are present simultaneously on the permanent storage of the computer. This disclosure provides for a single operating system to be initiated during a computer use sessions. Use of an alternate operating system is separated by a system shutdown.
Yoon et al., U.S. Pat. No. 6,088,794, titled Computer Systems Capable of Selective Booting from Two Hard Disk Drives, discusses a computer system having two fixed disk drives with a different operating system stored in each disk drive, in which selective booting and suspend/resume operations of the power management function can be performed through the two fixed disk drives. Each of the two disk drives has a reserved data storage area for the suspend operation. A port exchanger intervenes in response to a bus exchange control signal fed from a system controller, and passes or cross-switches the IDE interface signal paths directed to the hard disk drives to select an operating system. A controller produces the bus exchange control signal, under system management control, by referring to the hard disk drive status information during the boot or resume process. The user is limited to two operating systems in configurations with two hard drives.
Bertram et al., U.S. Pat. No. 5,134,580, discloses a computer with capability to automatically initialize in a first operating system of choice, and reinitialize in a second operating system, without computer shutdown. A computer system with read-only memory and permanent read/write memory allows the user to load an alternate operating system at the conclusion of a session without turning the computer off and then on. A customization word with a system request bit in read/write memory is responsible for bringing the machine up in the alternate operating system located in an external memory (on a diskette or fixed disk). The application program code triggers the switch, which is out of control of the user.
Other related art patents include Williams et al., U.S. Pat. No. 5,802,363, titled BIOS Dynamic Emulation of Multiple Diskettes from a Single Media; Cox et al., U.S. Pat. No. 5,361,358, titled System and Method for Installing Program Code for Operating from Multiple Bootable Operating Systems; Reynaud et al., U.S. Pat. No. 6,061,788, titled System and Method for Intelligent and Reliable Booting; Mori, U.S. Pat. No. 4,626,986 titled Processor having Plural Initial Loading Programs for Loading Different Operating Systems; Lin et al., U.S. Pat. No. 6,192,456B1 titled Method and Apparatus for Creating Formatted Fat Partitions with a Hard Drive Having a BIOS-less Controller; Beelitz et al., U.S. Pat. No. 6,247,126, titled Recoverable Software Installation Process and Apparatus for a Computer System; Ruff, U.S. Pat. No. 6,178,487B1, titled Manipulating Disk Partitions Between Disks; Orcutt, U.S. Pat. No. 6,185,575, titled In-Place Disk Partition Canonization and Storage Optimization; O'Brien et al., U.S. Pat. No. 5,278,973, titled Dual Operating System Computer; Murray et al., U.S. Pat. No. 6,185,666, titled Merging Computer Partitions; Wisecup, U.S. Pat. No. 6,167,532, titled Automatic System Recovery. The common and existing technology among these patents include means for managing partitions on removable and fixed storage media, installing multiple operating systems on a computer, and selectively booting one of the installed operating systems.
It would be an improvement to the art to use the existing BIOS power management capabilities to facilitate fast switching between operating systems in conjunction with a Super OS. Suspend and resume capabilities are widely used today and present in most personal computers, be they battery-operated notebook computers or typical desktop computers. The capabilities provided by the BIOS power management standard are intended to facilitate power savings by permitting users to suspend the operations of the computer during brief interruptions, and quickly resume operation at the conclusion of the interruption.
The present invention allows users to quickly switch between multiple active operating systems and application environments, without requiring a shutdown of one operating system (and the applications it hosts), and then the booting of another operating system, launching of the applications it hosts. Towards this end, the invention activates a Super Operating System (referred to herein from time to time as Super OS or SOS) in between the firmware instructions of the hardware and typical operating system function. The Super OS can then permit one operating system, contained to a virtual computer system, to hybernate, while the Super OS retains control of the basic computer system operation. With the recently resident OS suspended, the Super OS is able to boot an alternate OS, or resume a previously hybernated alternate OS, and give over total control to a virtual computer system, specifically structured for that particular OS form the total computer system assets. While the standard OS operates within its virtual PC, it is not affected by the recently suspended OS, or processes that OS had been processing with the computer resources that the now-resident OS is using. This includes data, which the user, through the Super OS has chosen to share with both Operating systems.
Super Operating Systems such as Flash Vos, as described in U.S. patent application Ser. No. 09/283,418, filed by Rafizadeh on Apr. 1, 1999, now U.S. Pat. No. 6,401,183, titled “Storage Manager for Computer Devices and Method for Manipulating Secondary Storage”, and U.S. patent application Ser. No. 09/285,147, for Flash Vos—“Virtual Operating System”, filed by Rafizadeh on Mar. 31, 1999, solve the problem of operating system hardware dominance by virtualizing the computer system's resources and allowing operating system independent control of an entire virtual system of such resources, including an ability to effectively operate multiple operating systems on a single computer, through the creation of multiple, independent virtual systems. The present invention increases the utility of such Super Operating Systems in that it enables faster switching operations between multiple operating systems and applications operating on the same computer.
In many cases computer performance can be significantly enhanced by the timely utilization of applications, and by the availability of more computing resources beyond the design capacity or the Operating System's original design. For example, the Windows 9X Operating Systems were designed in the 1980s with inherent limitations, which at that point appeared generously adequate. The designers clearly did not foresee the expansion of computing resources and capabilities, to include volumnous memory, the integration with audio and video components, appliance-like devices, such as handhelds and laptops, and wireless ports, which permit device to device transfer of data wherever a portable device may be located. It is now even possible to make a computer asset, remotely located across a network, part of a virtual computer, and assign that virtual computer for use by an OS designed for use on a 486 processor.
Finally, the Fast Switching method and apparatus saves users valuable time in accessing applications directly and immediately in multiple operating systems environments, and eliminates the need for cold starts and stops of the user environments, unless the user determines that such a reset is warranted. The integration of selected standard power management features into the Super OS graphical user interface (“GUI”) provides the user with a comprehensive Fast OS Switching management tool. The novel use of the power management features in the BIOS enables a user to quickly initiate a computer environment in one operating system, and then quickly switch between multiple operating systems and/or environments.